<%-- 
    Document   : buscarAutor
    Created on : 29-dic-2013, 15:36:17
    Author     : Johann Pando
--%>

<%@page import="app.modelo.Libro"%>
<%@page import="java.util.List"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link href="css/misEstilos.css"  type="text/css" rel="stylesheet"/>
        <link href="css/miFormularioTablas.css"  type="text/css" rel="stylesheet"/>
        <title>Buscar Libros de Autor</title>
        <script type="text/javascript" language="javascript">
            /**
             * Función que se invoca cuando se selecciona un nuevo valor
             * del combo de autores. Luego con el valor del combo se realiza
             * la llamada al servlet 'servletAutorURL' y como parámetro el valor obtenido
             * con el fin de recuperar los libros del autor seleccionado.
             * @returns {undefined}
             */
            function cargarLibros() {
                // Seleccionar la lista de todos los titulos
                var lista = document.getElementById("autor");
                //Si se ha seleccionado el título del combo, no continuamos...                 
                if (autor.selectedIndex != 0) {
                    // Obtener el indice del libro seleccionado
                    var indice = lista.options[autor.selectedIndex].value;
                    window.location = "buscarAutor.do?autor="+indice; 
                } 
            }

            /**
             * Función que se encarga de recuperar el autor. Busca ese autor
             * en los valores del combo, para realizar el efecto de que no se ha
             * cambiado el valor seleccionado.
             * @returns {undefined}
             */
            function cargarIndice(){
                <%if(request.getAttribute("autor") != null){%>                        
                    var sel = document.getElementById('autor');
                    var val = '<%=request.getAttribute("autor")%>'
                    for(var i = 0, j = sel.options.length; i < j; ++i) {
                        if(sel.options[i].innerHTML === val) {
                            sel.selectedIndex = i;
                            break;
                        }
                    }
                    sel.options[sel.selectedIndex].value;
                <%}%>
            }
            
        </script>
    </head>
    <!-- Al cargar la página se invoca a la función cargar libros (Consulta a BBDD)-->
    <body class="fondoPagina" onload="cargarIndice();"> 
        <!--BEGIN #signup-form -->
        <div id="signup-form">
            <!--BEGIN #subscribe-inner -->
            <div id="signup-inner">
                <div class="clearfix" id="header">
                    <h1>B&uacute;squeda de Libros por autor</h1>
                </div>
                <br>
                <p style="font-family:arial;color:red;font-size:20px;">Elige un autor:
                    <!-- Declaramos el identificador y la función que se activará cuando se cambie de valor.-->
                    <select id="autor" onchange="cargarLibros();">
                        <option>-- Seleccione Autor --</option>          
                        <%
                            if(request.getAttribute("autores") != null){
                                List<String> listaAutores = (List<String>)request.getAttribute("autores");
                                for(String autor: listaAutores){
                                    %><option><%=autor%></option>
                                    <%
                                }
                            }
                        %>    
                        
                    </select>
                </p>
                <% if (request.getAttribute("libros") != null) {%>                    
                <div class="datagrid">
                    <table>
                        <thead>
                            <tr align="center"><th>T&iacute;tulo</th><th>Autor</th><th>Editorial</th>
                                <th>ISBN</th><th>Publicaci&oacute;n</th>
                                <th>Precio</th><th>Descripci&oacute;n</th>                                                                     
                            </tr>
                        </thead>
                        <tbody>
                            <%
                                int longi = ((List<Libro>) request.getAttribute("libros")).size();
                                for (int i = 0; i < longi; i++) {
                                    if (i % 2 == 0) {
                                        %><tr><%
                                    } else {
                                        %><tr class="alt"><%
                                    }
                                    Libro libro = ((List<Libro>) request.getAttribute("libros")).get(i);
                                    %><td><%=libro.getTitulo()%></td><%
                                    %><td><%=libro.getAutor()%></td><%
                                    %><td><%=libro.getEditorial()%></td><%
                                    %><td><%=libro.getIsbn()%></td><%
                                    %><td><%=libro.getPublicacion()%></td><%
                                    %><td><%=libro.getPrecio()%></td><%
                                    %><td><%=libro.getDescripcion()%></td><%                                    
                                }//Fin del for
                            }//Fin de if request.getAttribute("libros")
                                %>
                        </tbody>
                    </table>
                </div>        
                <!-- Añadimos un div con un botón para volver atrás-->
                <div align="center" style="margin-top: 20px;"><a href="index.jsp">Volver</a></div>
                <!--END #signup-inner -->
            </div>
            <!--END #signup-form -->   
        </div>
    </body>
</html>
